﻿// ---------------------------------------------------------------------
// Partial của lớp SSupervisor
//
// Nội dung:
//    + Các hàm gửi message trong lượt BattlePhase
//
// Copyright (c) 2009 YugiOH
//
// Nguyễn Hữu Lê Trọng Tín      YM: ilu2009             ĐT: 0906520611 
// Võ Phước Hậu                 YM: phuochauspkt        ĐT: 0979202707
// ---------------------------------------------------------------------


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Common;

namespace ServerYuGi
{
    public partial class SSupervisor 
    {
        /// <summary>
        /// Gửi Battle Phase Begin đến tất cả user
        /// </summary>
        /// <param name="IDPlayer">ID player trong lượt</param>
        public void SendMessage_TURN_BATTLEPHASE_BEGIN_ToAll(int IDPlayer)
        {
            //ServerSocket.SendMessageToEveryOne(YMSG.TURN_BATTLEPHASE_BEGIN, IDPlayer);
            Table.SendMessageAll(YMSG.TURN_BATTLEPHASE_BEGIN, IDPlayer);
        }

        /// <summary>
        /// Gửi Battle phase end đến tất cả user
        /// </summary>
        /// <param name="IDPlayer">ID player trong lượt</param>
        public void SendMessage_TURN_BATTLEPHASE_END_ToAll(int IDPlayer)
        {
            //ServerSocket.SendMessageToEveryOne(YMSG.TURN_BATTLEPHASE_END, IDPlayer);
            Table.SendMessageAll(YMSG.TURN_BATTLEPHASE_END, IDPlayer);
        }

        /// <summary>
        /// Gửi message đến client để client chạy animation tấn công
        /// </summary>
        /// <param name="IDPlayer">ID player chạy animation</param>
        /// <param name="IDAttack">ID lá bài tấn công</param>
        /// <param name="IDDefense">ID lá bài phòng thủ</param>
        public void SendMessage_ANIMATION_CARD_TANCONG_ToID(int IDPlayer, int IDAttack, int IDDefense)
        {
            //ServerSocket.SendMessageToID(IDPlayer, YMSG.ANIMATION_CARD_TANCONG, IDAttack, IDDefense);
            Table.SendMessageToID(IDPlayer, YMSG.ANIMATION_CARD_TANCONG, IDAttack, IDDefense);
        }

        public void SendMessage_ANIMATION_CARD_TANCONG_ToAll(int IDAttack, int IDDefense)
        {
            //ServerSocket.SendMessageToEveryOne(YMSG.ANIMATION_CARD_TANCONG, IDAttack, IDDefense);
            Table.SendMessageAll(YMSG.ANIMATION_CARD_TANCONG, IDAttack, IDDefense);
        }

        /// <summary>
        /// Gửi message đến 1 player báo thay đổi điểm
        /// </summary>
        /// <param name="IDPlayer">ID player sẽ gửi đến</param>
        /// <param name="data">mảng byte sẽ gửi (1 byte đầu là ID player thay đổi điểm, 4 byte sau là số điểm thay đổi của player)</param>
        public void SendMessage_PLAYER_THAYDOIDIEM_ToID(int IDPlayer, byte[] data)
        {
            //ServerSocket.SendMessageToID(IDPlayer, YMSG.PLAYER_THAYDOIDIEM,data);
            Table.SendMessageToID(IDPlayer, YMSG.PLAYER_THAYDOIDIEM, data);
        }

        /// <summary>
        /// Gửi message đến tất cả player báo thay đổi điểm
        /// </summary>
        /// <param name="data">mảng byte sẽ gửi (1 byte đầu là ID player thay đổi điểm, 4 byte sau là số điểm thay đổi của player)</param>
        public void SendMessage_PLAYER_THAYDOIDIEM_ToAll(byte[] data)
        {
            //ServerSocket.SendMessageToEveryOne(YMSG.PLAYER_THAYDOIDIEM, data);
            Table.SendMessageAll(YMSG.PLAYER_THAYDOIDIEM, data);
        }

        /// <summary>
        /// Gửi message đến 1 player báo xóa 1 lá bài
        /// </summary>
        /// <param name="IDPlayer">ID player sẽ gửi</param>
        /// <param name="IDXoa">ID lá bài sẽ bị xóa</param>
        public void SendMessage_CARD_XOABAI_ToID(int IDPlayer, int IDXoa)
        {
            //ServerSocket.SendMessageToID(IDPlayer, YMSG.CARD_XOABAI, IDXoa);
            Table.SendMessageToID(IDPlayer, YMSG.CARD_XOABAI, IDXoa);
        }

        /// <summary>
        /// Gửi message đến tất cả player báo xóa 1 lá bài
        /// </summary>
        /// <param name="IDXoa">ID lá bài sẽ bị xóa</param>
        public void SendMessage_CARD_XOABAI_ToAll(int IDXoa)
        {
            //ServerSocket.SendMessageToEveryOne(YMSG.CARD_XOABAI, IDXoa);
            Table.SendMessageAll(YMSG.CARD_XOABAI, IDXoa);
        }

        /// <summary>
        /// Gửi message đến 1 player để chạy animation tấn công trực tiếp
        /// </summary>
        /// <param name="IDPlayer">ID player sẽ gửi</param>
        /// <param name="IDAttack">ID lá bài tấn công</param>
        public void SendMessage_ANIMATION_CARD_TANCONG_TRUCTIEP_ToID(int IDPlayer, int isAttack, int IDAttack)
        {
            //ServerSocket.SendMessageToID(IDPlayer, YMSG.ANIMATION_CARD_TANCONG_TRUCTIEP,isAttack, IDAttack);
            Table.SendMessageToID(IDPlayer, YMSG.ANIMATION_CARD_TANCONG_TRUCTIEP, isAttack, IDAttack);
        }
        public void SendMessage_ANIMATION_CARD_TANCONG_TRUCTIEP_ToAll(int IDAttack)
        {
            //ServerSocket.SendMessageToEveryOne(YMSG.ANIMATION_CARD_TANCONG_TRUCTIEP, IDAttack);
            Table.SendMessageAll(YMSG.ANIMATION_CARD_TANCONG_TRUCTIEP, IDAttack);
        }
    }
}
